// 这是mytable类型规范

// 每列对齐方式
type TableColumAlign = 'left' | 'center' | 'right'

// 列是否固定在左侧或者右侧
type TableColumFixed = 'left' | 'right'

// 表单样式配置
export interface TableStyleTypes {
  // 空显示
  emptyText?: string
  // 表格最大高度
  maxHeight?: string
  // 是否为斑马纹
  stripe?: boolean
  // 是否带有纵向边框
  border?: boolean
}

// 表单每条数据配置
export interface TableColumnTypes {
  // 数据名称
  prop: string
  // 标题
  label: string
  // 宽度
  width?: string
  // 最小宽度
  minWidth?: string
  // 对齐方式
  align?: TableColumAlign
  // 是否固定
  fixed?: TableColumFixed
  // 标题过长时，是否隐藏，只在一行显示
  showOverflowTooltip?: boolean
}

// 表单配置信息
export interface TableConfigTypes {
  // 表格数据列表
  tableColumn: Array<TableColumnTypes>
  // 表格样式
  tableStyle?: TableStyleTypes
  // 表格是否可选
  isSelection?: boolean
  // 是否显示序号
  isShowTableIndex?: boolean
  // 是否显示分页
  isShowPage?: boolean
}

// 分页数据类型
export interface TablePageTypes {
  // 当前页数
  currentPage: number
  // 当前页显示数据条数
  pageSize: number
  // 条数列表
  pageSizes?: Array<number>
  // 总数
  total: number
}
